const {NotFoundError} = require("./errors")

const {Category, User} = require("../models");

//成功
function success(res, message, data = {}, code = 200) {
    res.status(code).json({
        status: true,
        message,
        data
    })
}

//失败
function failure(res, error, message) {
    if (error && error.name === 'SequelizeValidationError') {
        const errors = error.errors.map(e => e.message)
        return res.status(400).json({
            status: false,
            message: '请求参数错误',
            errors
        })
    } else if (error && error.name === 'BadRequestError') {
        return res.status(400).json({
            status: false,
            message: '请求参数错误',
            errors: [error.message]
        })
    } else if (error && error.name === 'UnauthorizedError') {
        return res.status(401).json({
            status: false,
            message: '认证失败',
            errors: [error.message]
        })
    } else if (error && error.name === 'NotFoundError') {
        return res.status(400).json({
            status: false,
            message: '资源不存在',
            errors: [error.message]
        })
    } else {
        return res.status(500).json({
            status: false,
            message: '服务器内部错误',
            errors: [error.message]
        });
    }

}



module.exports = {
    success,
    failure
}